#include <iostream>

#include <vector>

#include <utility>

using namespace std;

template <typename T>
void print(T arg)
{
	cout << arg << endl;
}

template <typename T, typename ... Types>
void print(T value, const Types& ... args)
{
	cout << value << "   Remain: " << sizeof...(args) <<endl;
	print(args...);
}

template<typename T>
using IntPair = pair<int, T>;

using IntVector = vector<int>;

int main()
{
	print("abc", 1, 0.67, "last");

	using INT = int;

	INT n = 0;
	IntVector iv;
	IntPair<double> pd;



	return 0;
}



